package com.gz.furnitures.entity;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;

public class Page<T> {
    /**
     * 分页数据模型
     */
    //T表示泛型，因为将来分页模型对应的数据类型是不确定

    //因为每页显示多少条记录，是其他地方也可以使用
    //ctrl+shift+u 切换大小写
    public static final Integer DEFAULT_PAGE_SIZE = 3;

    //显示当前页[显示第几页]
    private Integer pageNo;
    //表示每页显示几条数据
    private Integer pageSize=DEFAULT_PAGE_SIZE;
    //表示共有多少页
    private Integer pageTotalCount=0;

    //可以通过totalRow和pageSize计算得到pageTotalCount

    //表示共有多少条记录   (从数据库来的，交给Dao)
    private Integer totalRow=0;
    //表示当前页要显示的数据  (从数据库来的，交给Dao)
    private List<T> items=new ArrayList<T>();
    //分页导航的字符串
    private String url;

    private LinkedHashMap <Integer,CartItem> cartItems=new LinkedHashMap <>();

    public LinkedHashMap<Integer, CartItem> getCartItems() {
        return cartItems;
    }

    public void setCartItems(LinkedHashMap <Integer, CartItem> cartItems) {
        this.cartItems = cartItems;
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public void setPageNo(Integer pageNo) {
        this.pageNo = pageNo;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public Integer getPageTotalCount() {
        return pageTotalCount;
    }

    public void setPageTotalCount(Integer pageTotalCount) {
        this.pageTotalCount = pageTotalCount;
    }

    public Integer getTotalRow() {
        return totalRow;
    }

    public void setTotalRow(Integer totalRow) {
        this.totalRow = totalRow;
    }

    public List<T> getItems() {
        return items;
    }

    public void setItems(List<T> items) {
        this.items = items;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }
}
